]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
boxpointer: Properly update arrow side when requested
authorFlorian Müllner <fmuellner@gnome.org>
Thu, 12 Mar 2026 10:32:40 +0000 (11:32 +0100)
committerMarge Bot <marge-bot@gnome.org>
Sat, 14 Mar 2026 10:30:45 +0000 (10:30 +0000)
Boxpointer tracks both the "user arrow side", which is the side
that was explicitly specified, and the "arrow side", which is the
actual side that may have been flipped due to space constraints.

However the former currently always keeps tracking the side that
was specified at construction time, even if it is explicitly
changed with `updateArrowSide()`.

That means that on allocation, the arrow side is reverted to its
original value again, unless the flip calculation happens to turn
it into the intended value.

This is unexpected, so update both current and intended arrow side
when updating the arrow side.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/4120>

js/ui/boxpointer.js

index 11aa20059565633444f6824fa462e4715d9db7d7..7d63016e533d887b21172bf92ab4202b885975a6 100644 (file)
@@ -666,7 +666,7 @@ export const BoxPointer = GObject.registerClass({
     }
 
     updateArrowSide(side) {
-        this._arrowSide = side;
+        this._arrowSide = this._userArrowSide = side;
         this.queue_relayout();
 
         this.emit('arrow-side-changed');